From fbf7a46dae7f18a313f9317bbf9afc2249941a95 Mon Sep 17 00:00:00 2001 From: Andrew Cooper Date: Wed, 22 May 2013 15:25:37 +0200 Subject: [PATCH] x86: Use explicit widths for MMIO read/write, and add 64bit variants Signed-off-by: Andrew Cooper Acked-by: Keir Fraser --- xen/include/asm-x86/io.h | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/xen/include/asm-x86/io.h b/xen/include/asm-x86/io.h index 122d0a1af2..b156f4870b 100644 --- a/xen/include/asm-x86/io.h +++ b/xen/include/asm-x86/io.h @@ -5,12 +5,14 @@ #include #include -#define readb(x) (*(volatile char *)(x)) -#define readw(x) (*(volatile short *)(x)) -#define readl(x) (*(volatile int *)(x)) -#define writeb(d,x) (*(volatile char *)(x) = (d)) -#define writew(d,x) (*(volatile short *)(x) = (d)) -#define writel(d,x) (*(volatile int *)(x) = (d)) +#define readb(x) (*(volatile uint8_t *)(x)) +#define readw(x) (*(volatile uint16_t *)(x)) +#define readl(x) (*(volatile uint32_t *)(x)) +#define readq(x) (*(volatile uint64_t *)(x)) +#define writeb(d,x) (*(volatile uint8_t *)(x) = (d)) +#define writew(d,x) (*(volatile uint16_t *)(x) = (d)) +#define writel(d,x) (*(volatile uint32_t *)(x) = (d)) +#define writeq(d,x) (*(volatile uint64_t *)(x) = (d)) #define __OUT1(s,x) \ static inline void out##s(unsigned x value, unsigned short port) { -- 2.30.2